home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 147 / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z / Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin / fdimg / oh!.2hd / OH!DEN_B.LZH / TOOLS / CDC / CDCSRC.LZH / _TNB.C next >
Text File  |  1995-03-20  |  1KB  |  50 lines

  1. /*
  2.  * tnb_.c [inline head] for X68k XC Compiler v2.00 Copyright 1993 1994 TNB製作所
  3.  */
  4.  
  5. #ifdef __GNUC__
  6.  
  7. static inline int DIVU(long o1,long o2){
  8.     return
  9.     ({register long    _d0_ asm("d0");
  10.       register long    _d1_;
  11.     _d0_=(o1); _d1_=(o2);
  12.     asm("divu.w    %1,%0\n\tswap    %0\n\tclr.w    %0\n\tswap    %0"
  13.         ::"d"(_d0_),"d"(_d1_):"d0");
  14.     (_d0_);
  15.     });
  16. }
  17. static inline int DIVS(long o1,long o2){
  18.     return
  19.     ({register long    _d0_ asm("d0");
  20.       register long    _d1_;
  21.     _d0_=(o1); _d1_=(o2);
  22.     asm("divs.w    %1,%0\n\text.l    %0"
  23.         ::"d"(_d0_),"d"(_d1_):"d0");
  24.     (_d0_);    
  25.     });
  26. }
  27. static inline int MODU(long o1,long o2){
  28.     return
  29.     ({register long    _d0_ asm("d0");
  30.       register long    _d1_;
  31.     _d0_=(o1); _d1_=(o2);
  32.     asm("divu.w    %1,%0\n\tclr.w    %0\n\tswap    %0"
  33.         ::"d"(_d0_),"d"(_d1_):"d0");
  34.     (_d0_);
  35.     });
  36. }
  37. static inline int MODS(long o1,long o2){
  38.     return
  39.     ({register long    _d0_ asm("d0");
  40.       register long    _d1_;
  41.     _d0_=(o1); _d1_=(o2);
  42.     asm("divs.w    %1,%0\n\text.l    %0"
  43.         ::"d"(_d0_),"d"(_d1_):"d0");
  44.     (_d0_);
  45.     });
  46. }
  47.  
  48. #endif
  49.  
  50.